{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "provenance": [],
      "machine_shape": "hm",
      "authorship_tag": "ABX9TyNlIGFsjA5R2HacLTtMXXqu",
      "include_colab_link": true
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    },
    "language_info": {
      "name": "python"
    },
    "widgets": {
      "application/vnd.jupyter.widget-state+json": {
        "3d00851ab910483ab94cc887e6163f67": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HBoxModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HBoxView",
            "box_style": "",
            "children": [
              "IPY_MODEL_e8dbb5bd9fab48c582397a5b5bbce8d5",
              "IPY_MODEL_8d0cee2f10c54ca2943bac6f14de0bbb",
              "IPY_MODEL_ae6a01b2b897433fb873f8c162652dc1"
            ],
            "layout": "IPY_MODEL_0292750bcc2c4307a026f894f04fe68f"
          }
        },
        "e8dbb5bd9fab48c582397a5b5bbce8d5": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_d27a620f15154ce1b478be378163a37e",
            "placeholder": "​",
            "style": "IPY_MODEL_02cec1c901754ec497ed69d15d965a56",
            "value": "tokenizer_config.json: 100%"
          }
        },
        "8d0cee2f10c54ca2943bac6f14de0bbb": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "FloatProgressModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "ProgressView",
            "bar_style": "success",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_a7b0eaca87df4c599961963dfa5d85c0",
            "max": 2539,
            "min": 0,
            "orientation": "horizontal",
            "style": "IPY_MODEL_1635eac9823a4d9ea28d2d2558561bca",
            "value": 2539
          }
        },
        "ae6a01b2b897433fb873f8c162652dc1": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_c9ed539d47ae4288aab5bcf6114c2315",
            "placeholder": "​",
            "style": "IPY_MODEL_4f7559757b0347b3b98e5c90397c50ea",
            "value": " 2.54k/2.54k [00:00&lt;00:00, 199kB/s]"
          }
        },
        "0292750bcc2c4307a026f894f04fe68f": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "d27a620f15154ce1b478be378163a37e": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "02cec1c901754ec497ed69d15d965a56": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "a7b0eaca87df4c599961963dfa5d85c0": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "1635eac9823a4d9ea28d2d2558561bca": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "ProgressStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "bar_color": null,
            "description_width": ""
          }
        },
        "c9ed539d47ae4288aab5bcf6114c2315": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "4f7559757b0347b3b98e5c90397c50ea": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "d62e01f0410545f9bc309024bf23aa21": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HBoxModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HBoxView",
            "box_style": "",
            "children": [
              "IPY_MODEL_1c5d9082c22a41fd88faca24b2756eac",
              "IPY_MODEL_b00602ba530c4fb09b9a93753a0ff741",
              "IPY_MODEL_07ba35b4b3264275b59be10545783c07"
            ],
            "layout": "IPY_MODEL_f36453a0dd0f4d9e909c19cf8eea8cb8"
          }
        },
        "1c5d9082c22a41fd88faca24b2756eac": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_ce53d6803f81463896c91bfbbe7342f7",
            "placeholder": "​",
            "style": "IPY_MODEL_b0f3ccc9eef6437e9c02ebad54b5d4bb",
            "value": "spiece.model: 100%"
          }
        },
        "b00602ba530c4fb09b9a93753a0ff741": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "FloatProgressModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "ProgressView",
            "bar_style": "success",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_59eeb360ad244214b19ee5596d4bddce",
            "max": 791656,
            "min": 0,
            "orientation": "horizontal",
            "style": "IPY_MODEL_04c04080e05f493dbd3f827ddc5cab82",
            "value": 791656
          }
        },
        "07ba35b4b3264275b59be10545783c07": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_b72caa1fc4d04f2081c81235b575a7b8",
            "placeholder": "​",
            "style": "IPY_MODEL_1644d8c727264b11a159a239b1583fdb",
            "value": " 792k/792k [00:00&lt;00:00, 3.62MB/s]"
          }
        },
        "f36453a0dd0f4d9e909c19cf8eea8cb8": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "ce53d6803f81463896c91bfbbe7342f7": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "b0f3ccc9eef6437e9c02ebad54b5d4bb": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "59eeb360ad244214b19ee5596d4bddce": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "04c04080e05f493dbd3f827ddc5cab82": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "ProgressStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "bar_color": null,
            "description_width": ""
          }
        },
        "b72caa1fc4d04f2081c81235b575a7b8": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "1644d8c727264b11a159a239b1583fdb": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "3c392d6945a943e6a86d9ff901c05846": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HBoxModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HBoxView",
            "box_style": "",
            "children": [
              "IPY_MODEL_13e02a842a644de58106d2b6f359bc80",
              "IPY_MODEL_856ddd5f95394a9d9bafdd920e205dd7",
              "IPY_MODEL_8128fc0e6e31499cbff1e23224ece979"
            ],
            "layout": "IPY_MODEL_fb06dbbe68cf4311a7496dec37086fb8"
          }
        },
        "13e02a842a644de58106d2b6f359bc80": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_307df4cd2a8b47799512bcc1533c4e8a",
            "placeholder": "​",
            "style": "IPY_MODEL_bd6311c946614152bde53b5eee6003db",
            "value": "special_tokens_map.json: 100%"
          }
        },
        "856ddd5f95394a9d9bafdd920e205dd7": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "FloatProgressModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "ProgressView",
            "bar_style": "success",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_2b561409578c4127ade439549c3b6475",
            "max": 2201,
            "min": 0,
            "orientation": "horizontal",
            "style": "IPY_MODEL_9e0c3da3cc124489964b09dcee7a741e",
            "value": 2201
          }
        },
        "8128fc0e6e31499cbff1e23224ece979": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_b5ea04a133bf410c80f4a348648b8bf5",
            "placeholder": "​",
            "style": "IPY_MODEL_c3850d81df044c51add3ac1ce0ca675d",
            "value": " 2.20k/2.20k [00:00&lt;00:00, 139kB/s]"
          }
        },
        "fb06dbbe68cf4311a7496dec37086fb8": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "307df4cd2a8b47799512bcc1533c4e8a": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "bd6311c946614152bde53b5eee6003db": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "2b561409578c4127ade439549c3b6475": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "9e0c3da3cc124489964b09dcee7a741e": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "ProgressStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "bar_color": null,
            "description_width": ""
          }
        },
        "b5ea04a133bf410c80f4a348648b8bf5": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "c3850d81df044c51add3ac1ce0ca675d": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "1831d3d742f342f49981e51896ad34cd": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HBoxModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HBoxView",
            "box_style": "",
            "children": [
              "IPY_MODEL_210e7a4ef457495da76b1db50f087d3d",
              "IPY_MODEL_fd7c1838ddf443d78af8ba51747efba7",
              "IPY_MODEL_0311a11c97264d978f73e961d7cde6f2"
            ],
            "layout": "IPY_MODEL_d767a1a9c8c340e38fa87334b4d7f6a6"
          }
        },
        "210e7a4ef457495da76b1db50f087d3d": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_ad834396d7cf496c88e724d724f16625",
            "placeholder": "​",
            "style": "IPY_MODEL_b012f4f400c84c66844e52f262e4e232",
            "value": "tokenizer.json: 100%"
          }
        },
        "fd7c1838ddf443d78af8ba51747efba7": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "FloatProgressModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "ProgressView",
            "bar_style": "success",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_a81006bb98884e88b52425aed7cf4b7e",
            "max": 2424064,
            "min": 0,
            "orientation": "horizontal",
            "style": "IPY_MODEL_4cd5db45d9ee49c79583555708fd7004",
            "value": 2424064
          }
        },
        "0311a11c97264d978f73e961d7cde6f2": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_83e907eea0104063ae3ee00a246b6801",
            "placeholder": "​",
            "style": "IPY_MODEL_d14f8f5ebc0c45f7af159a46bd79b5cd",
            "value": " 2.42M/2.42M [00:00&lt;00:00, 2.48MB/s]"
          }
        },
        "d767a1a9c8c340e38fa87334b4d7f6a6": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "ad834396d7cf496c88e724d724f16625": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "b012f4f400c84c66844e52f262e4e232": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "a81006bb98884e88b52425aed7cf4b7e": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "4cd5db45d9ee49c79583555708fd7004": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "ProgressStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "bar_color": null,
            "description_width": ""
          }
        },
        "83e907eea0104063ae3ee00a246b6801": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "d14f8f5ebc0c45f7af159a46bd79b5cd": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "f3d2eb37e9a24949990a38f617ed3374": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HBoxModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HBoxView",
            "box_style": "",
            "children": [
              "IPY_MODEL_679ebc5ded554b578afec63be7f60ac1",
              "IPY_MODEL_39228b826ef94b31b5c16804dac0e148",
              "IPY_MODEL_f5a8b9d6437c4b649de4c2541da7e211"
            ],
            "layout": "IPY_MODEL_ce28fc2a37ae43f3978eb8654bcad343"
          }
        },
        "679ebc5ded554b578afec63be7f60ac1": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_30442ad7c407498b9d5e6288d972a68c",
            "placeholder": "​",
            "style": "IPY_MODEL_9731e03660ac4461b824a274f4c998ce",
            "value": "config.json: 100%"
          }
        },
        "39228b826ef94b31b5c16804dac0e148": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "FloatProgressModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "ProgressView",
            "bar_style": "success",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_d609102774c5418da35398b3c18566da",
            "max": 1438,
            "min": 0,
            "orientation": "horizontal",
            "style": "IPY_MODEL_0eb8e3967d4745439a063fefe71108a2",
            "value": 1438
          }
        },
        "f5a8b9d6437c4b649de4c2541da7e211": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_e997b39e7c0a485d94122b52271fb1bd",
            "placeholder": "​",
            "style": "IPY_MODEL_f20ab76766af4c33bb87fccdbc41da6b",
            "value": " 1.44k/1.44k [00:00&lt;00:00, 101kB/s]"
          }
        },
        "ce28fc2a37ae43f3978eb8654bcad343": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "30442ad7c407498b9d5e6288d972a68c": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "9731e03660ac4461b824a274f4c998ce": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "d609102774c5418da35398b3c18566da": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "0eb8e3967d4745439a063fefe71108a2": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "ProgressStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "bar_color": null,
            "description_width": ""
          }
        },
        "e997b39e7c0a485d94122b52271fb1bd": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "f20ab76766af4c33bb87fccdbc41da6b": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "293dd5dc5b834df884c2ef9d1569ced2": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HBoxModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HBoxView",
            "box_style": "",
            "children": [
              "IPY_MODEL_f7589cec63754137a2b87d3dd23b8661",
              "IPY_MODEL_1aa7b394788846a98ca2f96852e7a2ff",
              "IPY_MODEL_d7d8b093b351405891ece69c4cedd508"
            ],
            "layout": "IPY_MODEL_bb78df3673644449a4d83bb2ae4fc24a"
          }
        },
        "f7589cec63754137a2b87d3dd23b8661": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_f3f915a5ada34a0ba15c8da7ebfc92f1",
            "placeholder": "​",
            "style": "IPY_MODEL_4094d915a18d40ff85a03b6922aca195",
            "value": "model.safetensors.index.json: 100%"
          }
        },
        "1aa7b394788846a98ca2f96852e7a2ff": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "FloatProgressModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "ProgressView",
            "bar_style": "success",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_76bf89b9dd204a0eab820124eb32cddd",
            "max": 53032,
            "min": 0,
            "orientation": "horizontal",
            "style": "IPY_MODEL_7eeb4f11395d4d4b8be988bfd4640263",
            "value": 53032
          }
        },
        "d7d8b093b351405891ece69c4cedd508": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_c04fc34f986c4db6983600d557d13a69",
            "placeholder": "​",
            "style": "IPY_MODEL_37e12ca0960a4e8c96e127a9ad6d3629",
            "value": " 53.0k/53.0k [00:00&lt;00:00, 275kB/s]"
          }
        },
        "bb78df3673644449a4d83bb2ae4fc24a": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "f3f915a5ada34a0ba15c8da7ebfc92f1": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "4094d915a18d40ff85a03b6922aca195": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "76bf89b9dd204a0eab820124eb32cddd": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "7eeb4f11395d4d4b8be988bfd4640263": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "ProgressStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "bar_color": null,
            "description_width": ""
          }
        },
        "c04fc34f986c4db6983600d557d13a69": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "37e12ca0960a4e8c96e127a9ad6d3629": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "532fed23a09640e88728f0ee5b6b8883": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HBoxModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HBoxView",
            "box_style": "",
            "children": [
              "IPY_MODEL_2869b5dfb4d444848b96f2bdd0473e7b",
              "IPY_MODEL_8647aa4e12154118956d40b8a871a142",
              "IPY_MODEL_77c04431481d41b88fb334537b88c80e"
            ],
            "layout": "IPY_MODEL_641473c26fba48eeb3a5f9c7871394a6"
          }
        },
        "2869b5dfb4d444848b96f2bdd0473e7b": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_98dc181d9f7743a88e1fa86c6a49cf9b",
            "placeholder": "​",
            "style": "IPY_MODEL_c8a53a2fd5cb49f38635129e4805af65",
            "value": "Downloading shards: 100%"
          }
        },
        "8647aa4e12154118956d40b8a871a142": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "FloatProgressModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "ProgressView",
            "bar_style": "success",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_be290fa3990147ba91a31b12a3c7fc53",
            "max": 2,
            "min": 0,
            "orientation": "horizontal",
            "style": "IPY_MODEL_b363c9d4fd644debac076c27188ac0ec",
            "value": 2
          }
        },
        "77c04431481d41b88fb334537b88c80e": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_aca518560a6543fcb9167121362bc211",
            "placeholder": "​",
            "style": "IPY_MODEL_d1270d4d9cc24a8597523fabe3116897",
            "value": " 2/2 [04:18&lt;00:00, 113.63s/it]"
          }
        },
        "641473c26fba48eeb3a5f9c7871394a6": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "98dc181d9f7743a88e1fa86c6a49cf9b": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "c8a53a2fd5cb49f38635129e4805af65": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "be290fa3990147ba91a31b12a3c7fc53": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "b363c9d4fd644debac076c27188ac0ec": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "ProgressStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "bar_color": null,
            "description_width": ""
          }
        },
        "aca518560a6543fcb9167121362bc211": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "d1270d4d9cc24a8597523fabe3116897": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "27c08fc795cf4831be3df037c4f9077d": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HBoxModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HBoxView",
            "box_style": "",
            "children": [
              "IPY_MODEL_8730019a4d6445079c5a4c1d68c3fc45",
              "IPY_MODEL_9bd08f699d394767b2f182612ff68e45",
              "IPY_MODEL_24da3277be1a49d3858e276f31c0b115"
            ],
            "layout": "IPY_MODEL_305d7c763ef447f7bcec798a9eed6cf8"
          }
        },
        "8730019a4d6445079c5a4c1d68c3fc45": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_fb821beb5942452bb9429fba1122d310",
            "placeholder": "​",
            "style": "IPY_MODEL_7c569f954c374886be255f0d6e498558",
            "value": "model-00001-of-00002.safetensors: 100%"
          }
        },
        "9bd08f699d394767b2f182612ff68e45": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "FloatProgressModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "ProgressView",
            "bar_style": "success",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_8c818210f32c487aa92f39efca57f6dd",
            "max": 9449619912,
            "min": 0,
            "orientation": "horizontal",
            "style": "IPY_MODEL_9e3c1c997ae94e7795500d83c3dc899b",
            "value": 9449619912
          }
        },
        "24da3277be1a49d3858e276f31c0b115": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_d7fd9dcdf6ab4c81986b09b8c7fc8c37",
            "placeholder": "​",
            "style": "IPY_MODEL_b23b21d38f264621821b3e6f261f2fc9",
            "value": " 9.45G/9.45G [03:37&lt;00:00, 50.1MB/s]"
          }
        },
        "305d7c763ef447f7bcec798a9eed6cf8": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "fb821beb5942452bb9429fba1122d310": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "7c569f954c374886be255f0d6e498558": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "8c818210f32c487aa92f39efca57f6dd": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "9e3c1c997ae94e7795500d83c3dc899b": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "ProgressStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "bar_color": null,
            "description_width": ""
          }
        },
        "d7fd9dcdf6ab4c81986b09b8c7fc8c37": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "b23b21d38f264621821b3e6f261f2fc9": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "ed6e934dbb244402a627ec02b7dfd735": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HBoxModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HBoxView",
            "box_style": "",
            "children": [
              "IPY_MODEL_1044c0a1c440433ba3ef9639d8de3114",
              "IPY_MODEL_69df5044f987441cb512a626b1c0145e",
              "IPY_MODEL_bbc902bba7b346c4a13ad7c2c1efd4ce"
            ],
            "layout": "IPY_MODEL_8baaf2d339714f248c3c477d2bf157be"
          }
        },
        "1044c0a1c440433ba3ef9639d8de3114": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_b79fa7d4342048428fa3111473eae16f",
            "placeholder": "​",
            "style": "IPY_MODEL_2987dd1356184afa9ce48626c548376c",
            "value": "model-00002-of-00002.safetensors: 100%"
          }
        },
        "69df5044f987441cb512a626b1c0145e": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "FloatProgressModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "ProgressView",
            "bar_style": "success",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_53e57b7371ac4b0196d6b43ada66b8a3",
            "max": 1949477672,
            "min": 0,
            "orientation": "horizontal",
            "style": "IPY_MODEL_5cfaf76b061140299b81a6e09a566985",
            "value": 1949477672
          }
        },
        "bbc902bba7b346c4a13ad7c2c1efd4ce": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_968446d7fd574d538683dfe1e5467050",
            "placeholder": "​",
            "style": "IPY_MODEL_0a549ce3510344e6a375ff4f8804f4ca",
            "value": " 1.95G/1.95G [00:40&lt;00:00, 55.9MB/s]"
          }
        },
        "8baaf2d339714f248c3c477d2bf157be": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "b79fa7d4342048428fa3111473eae16f": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "2987dd1356184afa9ce48626c548376c": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "53e57b7371ac4b0196d6b43ada66b8a3": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "5cfaf76b061140299b81a6e09a566985": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "ProgressStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "bar_color": null,
            "description_width": ""
          }
        },
        "968446d7fd574d538683dfe1e5467050": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "0a549ce3510344e6a375ff4f8804f4ca": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "e0bcd8a9261c4fd08ea40d0c5a467872": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HBoxModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HBoxView",
            "box_style": "",
            "children": [
              "IPY_MODEL_9c32fc90e9d947a896d146014bb0d327",
              "IPY_MODEL_e078be7f9f2b4e9289aaebccfe84de6e",
              "IPY_MODEL_ab66d6217a784407972868a12586e69f"
            ],
            "layout": "IPY_MODEL_45a34a4f196841c7993852efb0d5eae8"
          }
        },
        "9c32fc90e9d947a896d146014bb0d327": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_68a5e3b4e81c41e08e00a8717a00eb09",
            "placeholder": "​",
            "style": "IPY_MODEL_9458d365bc6841388e869baffacfbf87",
            "value": "Loading checkpoint shards: 100%"
          }
        },
        "e078be7f9f2b4e9289aaebccfe84de6e": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "FloatProgressModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "ProgressView",
            "bar_style": "success",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_6749a22addf84602af7e6fbd5b5ce64f",
            "max": 2,
            "min": 0,
            "orientation": "horizontal",
            "style": "IPY_MODEL_1225ca2312814aa5b1ca77dd9dd27ae4",
            "value": 2
          }
        },
        "ab66d6217a784407972868a12586e69f": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_45adf4c3ed1c4ff2b3241da8e60af4a9",
            "placeholder": "​",
            "style": "IPY_MODEL_44f5e58c63fd4a1eb54858142d50721d",
            "value": " 2/2 [00:03&lt;00:00,  1.70s/it]"
          }
        },
        "45a34a4f196841c7993852efb0d5eae8": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "68a5e3b4e81c41e08e00a8717a00eb09": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "9458d365bc6841388e869baffacfbf87": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "6749a22addf84602af7e6fbd5b5ce64f": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "1225ca2312814aa5b1ca77dd9dd27ae4": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "ProgressStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "bar_color": null,
            "description_width": ""
          }
        },
        "45adf4c3ed1c4ff2b3241da8e60af4a9": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "44f5e58c63fd4a1eb54858142d50721d": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "78d029de4c894a388201c1d838d27445": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HBoxModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HBoxModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HBoxView",
            "box_style": "",
            "children": [
              "IPY_MODEL_3141b35b2525446bbada441d13a02b94",
              "IPY_MODEL_e198e54720264f6cbf6ef264bae7f887",
              "IPY_MODEL_273cd056703148768b8e522e8376a79c"
            ],
            "layout": "IPY_MODEL_5be9faee03024500b491a6d096a6df4b"
          }
        },
        "3141b35b2525446bbada441d13a02b94": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_1b6770e65f3b4a8aadf03a65d4452a04",
            "placeholder": "​",
            "style": "IPY_MODEL_a348c836f5bf4977b117c248a42d707d",
            "value": "generation_config.json: 100%"
          }
        },
        "e198e54720264f6cbf6ef264bae7f887": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "FloatProgressModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "FloatProgressModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "ProgressView",
            "bar_style": "success",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_0fca51ee1dba425bbc152aa01815f6cf",
            "max": 147,
            "min": 0,
            "orientation": "horizontal",
            "style": "IPY_MODEL_afbbeb701f0d48b28f5d9e2639aa15b9",
            "value": 147
          }
        },
        "273cd056703148768b8e522e8376a79c": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "HTMLModel",
          "model_module_version": "1.5.0",
          "state": {
            "_dom_classes": [],
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "HTMLModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/controls",
            "_view_module_version": "1.5.0",
            "_view_name": "HTMLView",
            "description": "",
            "description_tooltip": null,
            "layout": "IPY_MODEL_96997a1b8b9c4a0c8f03052c2cbbbaed",
            "placeholder": "​",
            "style": "IPY_MODEL_9be56942251441029da08047076b8b4e",
            "value": " 147/147 [00:00&lt;00:00, 12.3kB/s]"
          }
        },
        "5be9faee03024500b491a6d096a6df4b": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "1b6770e65f3b4a8aadf03a65d4452a04": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "a348c836f5bf4977b117c248a42d707d": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        },
        "0fca51ee1dba425bbc152aa01815f6cf": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "afbbeb701f0d48b28f5d9e2639aa15b9": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "ProgressStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "ProgressStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "bar_color": null,
            "description_width": ""
          }
        },
        "96997a1b8b9c4a0c8f03052c2cbbbaed": {
          "model_module": "@jupyter-widgets/base",
          "model_name": "LayoutModel",
          "model_module_version": "1.2.0",
          "state": {
            "_model_module": "@jupyter-widgets/base",
            "_model_module_version": "1.2.0",
            "_model_name": "LayoutModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "LayoutView",
            "align_content": null,
            "align_items": null,
            "align_self": null,
            "border": null,
            "bottom": null,
            "display": null,
            "flex": null,
            "flex_flow": null,
            "grid_area": null,
            "grid_auto_columns": null,
            "grid_auto_flow": null,
            "grid_auto_rows": null,
            "grid_column": null,
            "grid_gap": null,
            "grid_row": null,
            "grid_template_areas": null,
            "grid_template_columns": null,
            "grid_template_rows": null,
            "height": null,
            "justify_content": null,
            "justify_items": null,
            "left": null,
            "margin": null,
            "max_height": null,
            "max_width": null,
            "min_height": null,
            "min_width": null,
            "object_fit": null,
            "object_position": null,
            "order": null,
            "overflow": null,
            "overflow_x": null,
            "overflow_y": null,
            "padding": null,
            "right": null,
            "top": null,
            "visibility": null,
            "width": null
          }
        },
        "9be56942251441029da08047076b8b4e": {
          "model_module": "@jupyter-widgets/controls",
          "model_name": "DescriptionStyleModel",
          "model_module_version": "1.5.0",
          "state": {
            "_model_module": "@jupyter-widgets/controls",
            "_model_module_version": "1.5.0",
            "_model_name": "DescriptionStyleModel",
            "_view_count": null,
            "_view_module": "@jupyter-widgets/base",
            "_view_module_version": "1.2.0",
            "_view_name": "StyleView",
            "description_width": ""
          }
        }
      }
    }
  },
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "view-in-github",
        "colab_type": "text"
      },
      "source": [
        "<a href=\"https://colab.research.google.com/github/DanielWarfield1/MLWritingAndResearch/blob/main/SpeculativeSampling.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "#Speculative Sampling\n",
        "Implimenting a naiive aproach for demonstration purposes.\n",
        "\n",
        "Requires a high ram instance"
      ],
      "metadata": {
        "id": "_b6iMq5HF2QI"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "!pip install sentencepiece"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "WzQ5b1oOBz_0",
        "outputId": "5655f176-b6d6-4c3a-aaf4-02c637a427bf"
      },
      "execution_count": 3,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Collecting sentencepiece\n",
            "  Downloading sentencepiece-0.1.99-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB)\n",
            "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.3/1.3 MB\u001b[0m \u001b[31m14.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
            "\u001b[?25hInstalling collected packages: sentencepiece\n",
            "Successfully installed sentencepiece-0.1.99\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "\"\"\"Loading the draft model\n",
        "\"\"\"\n",
        "\n",
        "from transformers import T5Tokenizer, T5ForConditionalGeneration\n",
        "\n",
        "#loading the draft model\n",
        "draft = \"google/flan-t5-large\"\n",
        "draft_tokenizer = T5Tokenizer.from_pretrained(draft)\n",
        "draft_model = T5ForConditionalGeneration.from_pretrained(draft)\n",
        "\n",
        "#generating a sample response, to make sure everythings working.\n",
        "prompt = \"Question: What is the geological compesition of the Moon? Explain. \\nAnswer:\"\n",
        "input_ids = draft_tokenizer(prompt, return_tensors=\"pt\").input_ids\n",
        "outputs = draft_model.generate(input_ids)\n",
        "print(draft_tokenizer.decode(outputs[0]))"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "NgLNcUmaBEfI",
        "outputId": "d36d8388-05f7-4d22-91d0-d33f1f9673aa"
      },
      "execution_count": 24,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stderr",
          "text": [
            "Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained.\n",
            "/usr/local/lib/python3.10/dist-packages/transformers/generation/utils.py:1273: UserWarning: Using the model-agnostic default `max_length` (=20) to control the generation length. We recommend setting `max_new_tokens` to control the maximum length of the generation.\n",
            "  warnings.warn(\n"
          ]
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "<pad> The Moon is a crater.</s>\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "\"\"\"Loading the target model\n",
        "\"\"\"\n",
        "\n",
        "#loading the target model\n",
        "target = \"google/flan-t5-xl\"\n",
        "target_tokenizer = T5Tokenizer.from_pretrained(target)\n",
        "target_model = T5ForConditionalGeneration.from_pretrained(target)\n",
        "\n",
        "#generating a sample response, to make sure everythings working.\n",
        "input_ids = target_tokenizer(prompt, return_tensors=\"pt\").input_ids\n",
        "outputs = target_model.generate(input_ids)\n",
        "print(target_tokenizer.decode(outputs[0]))"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 404,
          "referenced_widgets": [
            "3d00851ab910483ab94cc887e6163f67",
            "e8dbb5bd9fab48c582397a5b5bbce8d5",
            "8d0cee2f10c54ca2943bac6f14de0bbb",
            "ae6a01b2b897433fb873f8c162652dc1",
            "0292750bcc2c4307a026f894f04fe68f",
            "d27a620f15154ce1b478be378163a37e",
            "02cec1c901754ec497ed69d15d965a56",
            "a7b0eaca87df4c599961963dfa5d85c0",
            "1635eac9823a4d9ea28d2d2558561bca",
            "c9ed539d47ae4288aab5bcf6114c2315",
            "4f7559757b0347b3b98e5c90397c50ea",
            "d62e01f0410545f9bc309024bf23aa21",
            "1c5d9082c22a41fd88faca24b2756eac",
            "b00602ba530c4fb09b9a93753a0ff741",
            "07ba35b4b3264275b59be10545783c07",
            "f36453a0dd0f4d9e909c19cf8eea8cb8",
            "ce53d6803f81463896c91bfbbe7342f7",
            "b0f3ccc9eef6437e9c02ebad54b5d4bb",
            "59eeb360ad244214b19ee5596d4bddce",
            "04c04080e05f493dbd3f827ddc5cab82",
            "b72caa1fc4d04f2081c81235b575a7b8",
            "1644d8c727264b11a159a239b1583fdb",
            "3c392d6945a943e6a86d9ff901c05846",
            "13e02a842a644de58106d2b6f359bc80",
            "856ddd5f95394a9d9bafdd920e205dd7",
            "8128fc0e6e31499cbff1e23224ece979",
            "fb06dbbe68cf4311a7496dec37086fb8",
            "307df4cd2a8b47799512bcc1533c4e8a",
            "bd6311c946614152bde53b5eee6003db",
            "2b561409578c4127ade439549c3b6475",
            "9e0c3da3cc124489964b09dcee7a741e",
            "b5ea04a133bf410c80f4a348648b8bf5",
            "c3850d81df044c51add3ac1ce0ca675d",
            "1831d3d742f342f49981e51896ad34cd",
            "210e7a4ef457495da76b1db50f087d3d",
            "fd7c1838ddf443d78af8ba51747efba7",
            "0311a11c97264d978f73e961d7cde6f2",
            "d767a1a9c8c340e38fa87334b4d7f6a6",
            "ad834396d7cf496c88e724d724f16625",
            "b012f4f400c84c66844e52f262e4e232",
            "a81006bb98884e88b52425aed7cf4b7e",
            "4cd5db45d9ee49c79583555708fd7004",
            "83e907eea0104063ae3ee00a246b6801",
            "d14f8f5ebc0c45f7af159a46bd79b5cd",
            "f3d2eb37e9a24949990a38f617ed3374",
            "679ebc5ded554b578afec63be7f60ac1",
            "39228b826ef94b31b5c16804dac0e148",
            "f5a8b9d6437c4b649de4c2541da7e211",
            "ce28fc2a37ae43f3978eb8654bcad343",
            "30442ad7c407498b9d5e6288d972a68c",
            "9731e03660ac4461b824a274f4c998ce",
            "d609102774c5418da35398b3c18566da",
            "0eb8e3967d4745439a063fefe71108a2",
            "e997b39e7c0a485d94122b52271fb1bd",
            "f20ab76766af4c33bb87fccdbc41da6b",
            "293dd5dc5b834df884c2ef9d1569ced2",
            "f7589cec63754137a2b87d3dd23b8661",
            "1aa7b394788846a98ca2f96852e7a2ff",
            "d7d8b093b351405891ece69c4cedd508",
            "bb78df3673644449a4d83bb2ae4fc24a",
            "f3f915a5ada34a0ba15c8da7ebfc92f1",
            "4094d915a18d40ff85a03b6922aca195",
            "76bf89b9dd204a0eab820124eb32cddd",
            "7eeb4f11395d4d4b8be988bfd4640263",
            "c04fc34f986c4db6983600d557d13a69",
            "37e12ca0960a4e8c96e127a9ad6d3629",
            "532fed23a09640e88728f0ee5b6b8883",
            "2869b5dfb4d444848b96f2bdd0473e7b",
            "8647aa4e12154118956d40b8a871a142",
            "77c04431481d41b88fb334537b88c80e",
            "641473c26fba48eeb3a5f9c7871394a6",
            "98dc181d9f7743a88e1fa86c6a49cf9b",
            "c8a53a2fd5cb49f38635129e4805af65",
            "be290fa3990147ba91a31b12a3c7fc53",
            "b363c9d4fd644debac076c27188ac0ec",
            "aca518560a6543fcb9167121362bc211",
            "d1270d4d9cc24a8597523fabe3116897",
            "27c08fc795cf4831be3df037c4f9077d",
            "8730019a4d6445079c5a4c1d68c3fc45",
            "9bd08f699d394767b2f182612ff68e45",
            "24da3277be1a49d3858e276f31c0b115",
            "305d7c763ef447f7bcec798a9eed6cf8",
            "fb821beb5942452bb9429fba1122d310",
            "7c569f954c374886be255f0d6e498558",
            "8c818210f32c487aa92f39efca57f6dd",
            "9e3c1c997ae94e7795500d83c3dc899b",
            "d7fd9dcdf6ab4c81986b09b8c7fc8c37",
            "b23b21d38f264621821b3e6f261f2fc9",
            "ed6e934dbb244402a627ec02b7dfd735",
            "1044c0a1c440433ba3ef9639d8de3114",
            "69df5044f987441cb512a626b1c0145e",
            "bbc902bba7b346c4a13ad7c2c1efd4ce",
            "8baaf2d339714f248c3c477d2bf157be",
            "b79fa7d4342048428fa3111473eae16f",
            "2987dd1356184afa9ce48626c548376c",
            "53e57b7371ac4b0196d6b43ada66b8a3",
            "5cfaf76b061140299b81a6e09a566985",
            "968446d7fd574d538683dfe1e5467050",
            "0a549ce3510344e6a375ff4f8804f4ca",
            "e0bcd8a9261c4fd08ea40d0c5a467872",
            "9c32fc90e9d947a896d146014bb0d327",
            "e078be7f9f2b4e9289aaebccfe84de6e",
            "ab66d6217a784407972868a12586e69f",
            "45a34a4f196841c7993852efb0d5eae8",
            "68a5e3b4e81c41e08e00a8717a00eb09",
            "9458d365bc6841388e869baffacfbf87",
            "6749a22addf84602af7e6fbd5b5ce64f",
            "1225ca2312814aa5b1ca77dd9dd27ae4",
            "45adf4c3ed1c4ff2b3241da8e60af4a9",
            "44f5e58c63fd4a1eb54858142d50721d",
            "78d029de4c894a388201c1d838d27445",
            "3141b35b2525446bbada441d13a02b94",
            "e198e54720264f6cbf6ef264bae7f887",
            "273cd056703148768b8e522e8376a79c",
            "5be9faee03024500b491a6d096a6df4b",
            "1b6770e65f3b4a8aadf03a65d4452a04",
            "a348c836f5bf4977b117c248a42d707d",
            "0fca51ee1dba425bbc152aa01815f6cf",
            "afbbeb701f0d48b28f5d9e2639aa15b9",
            "96997a1b8b9c4a0c8f03052c2cbbbaed",
            "9be56942251441029da08047076b8b4e"
          ]
        },
        "id": "gttGbooaBnw4",
        "outputId": "8d5a1c3c-fca9-4559-c05d-1dc0f3a97e4c"
      },
      "execution_count": 6,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "tokenizer_config.json:   0%|          | 0.00/2.54k [00:00<?, ?B/s]"
            ],
            "application/vnd.jupyter.widget-view+json": {
              "version_major": 2,
              "version_minor": 0,
              "model_id": "3d00851ab910483ab94cc887e6163f67"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "spiece.model:   0%|          | 0.00/792k [00:00<?, ?B/s]"
            ],
            "application/vnd.jupyter.widget-view+json": {
              "version_major": 2,
              "version_minor": 0,
              "model_id": "d62e01f0410545f9bc309024bf23aa21"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "special_tokens_map.json:   0%|          | 0.00/2.20k [00:00<?, ?B/s]"
            ],
            "application/vnd.jupyter.widget-view+json": {
              "version_major": 2,
              "version_minor": 0,
              "model_id": "3c392d6945a943e6a86d9ff901c05846"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "tokenizer.json:   0%|          | 0.00/2.42M [00:00<?, ?B/s]"
            ],
            "application/vnd.jupyter.widget-view+json": {
              "version_major": 2,
              "version_minor": 0,
              "model_id": "1831d3d742f342f49981e51896ad34cd"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "stream",
          "name": "stderr",
          "text": [
            "Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained.\n"
          ]
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "config.json:   0%|          | 0.00/1.44k [00:00<?, ?B/s]"
            ],
            "application/vnd.jupyter.widget-view+json": {
              "version_major": 2,
              "version_minor": 0,
              "model_id": "f3d2eb37e9a24949990a38f617ed3374"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "model.safetensors.index.json:   0%|          | 0.00/53.0k [00:00<?, ?B/s]"
            ],
            "application/vnd.jupyter.widget-view+json": {
              "version_major": 2,
              "version_minor": 0,
              "model_id": "293dd5dc5b834df884c2ef9d1569ced2"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "Downloading shards:   0%|          | 0/2 [00:00<?, ?it/s]"
            ],
            "application/vnd.jupyter.widget-view+json": {
              "version_major": 2,
              "version_minor": 0,
              "model_id": "532fed23a09640e88728f0ee5b6b8883"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "model-00001-of-00002.safetensors:   0%|          | 0.00/9.45G [00:00<?, ?B/s]"
            ],
            "application/vnd.jupyter.widget-view+json": {
              "version_major": 2,
              "version_minor": 0,
              "model_id": "27c08fc795cf4831be3df037c4f9077d"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "model-00002-of-00002.safetensors:   0%|          | 0.00/1.95G [00:00<?, ?B/s]"
            ],
            "application/vnd.jupyter.widget-view+json": {
              "version_major": 2,
              "version_minor": 0,
              "model_id": "ed6e934dbb244402a627ec02b7dfd735"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "Loading checkpoint shards:   0%|          | 0/2 [00:00<?, ?it/s]"
            ],
            "application/vnd.jupyter.widget-view+json": {
              "version_major": 2,
              "version_minor": 0,
              "model_id": "e0bcd8a9261c4fd08ea40d0c5a467872"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "generation_config.json:   0%|          | 0.00/147 [00:00<?, ?B/s]"
            ],
            "application/vnd.jupyter.widget-view+json": {
              "version_major": 2,
              "version_minor": 0,
              "model_id": "78d029de4c894a388201c1d838d27445"
            }
          },
          "metadata": {}
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "<pad>The Moon is composed of rock and ice. Rock and ice are the same thing.\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "\"\"\"Ensuring the tokenizers are identical\n",
        "in order for speculative sampling to work, tokenization for both the draft\n",
        "and target model must be identical. This is a sanity check to make sure they are.\n",
        "\"\"\"\n",
        "\n",
        "#tokenizing a test sequence\n",
        "tokenizer_test = \"this, is, some [text] for 1234comparing, tokenizers adoihayyuz\"\n",
        "ex1 = target_tokenizer(prompt, return_tensors=\"pt\").input_ids\n",
        "ex2 = draft_tokenizer(prompt, return_tensors=\"pt\").input_ids\n",
        "\n",
        "#zero means all tokenized values are the same, so the tokenizers are\n",
        "#more than likely identical\n",
        "print((ex1-ex2).abs().max())"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "rgT0NfgvCg48",
        "outputId": "426f33b6-25f0-48cd-a951-811c297a7b9f"
      },
      "execution_count": 14,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "tensor(0)\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "Example, I think, of next word prediction: https://jamesmccaffrey.wordpress.com/2021/10/21/a-predict-next-word-example-using-hugging-face-and-gpt-2/\n",
        "\n",
        "actually, T5 is encoder decoder apparently. Here's an example. https://huggingface.co/docs/transformers/model_doc/t5#:~:text=from%20transformers%20import%20AutoTokenizer%2C%20T5Model,decoder_input_ids)%0A%3E%3E%3E%20last_hidden_states%20%3D%20outputs.last_hidden_state\n"
      ],
      "metadata": {
        "id": "Cx2wNSu8HJao"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "\"\"\"Performing Speculative Sampling\n",
        "\"\"\"\n",
        "\n",
        "#initializing an empty input to feed to the decoder.\n",
        "#this is updated each loop with valid generations\n",
        "decoder_ids = draft_model._shift_right(draft_tokenizer(\"\", return_tensors=\"pt\").input_ids)\n",
        "\n",
        "#defining input. T5 is an encoder-decoder model, so input and output are handled seperatly\n",
        "input_ids = draft_tokenizer(\"Translate to German \\n Battle not with monsters, lest ye become a monster, and if you gaze into the abyss, the abyss gazes also into you.\", return_tensors=\"pt\").input_ids\n",
        "\n",
        "#defining the number of draft generations\n",
        "k = 5\n",
        "\n",
        "#keeps track of generation information, for later printouts\n",
        "generated = []\n",
        "\n",
        "#Generating Text\n",
        "iter = 0\n",
        "for _ in range(15):\n",
        "    print('========== Speculative Sampling Iteration {} =========='.format(iter))\n",
        "    iter+=1\n",
        "\n",
        "    #creating a holding place for the generated draft\n",
        "    decoder_ids_draft = decoder_ids.clone()\n",
        "\n",
        "    before_text = draft_tokenizer.decode(decoder_ids_draft[0])\n",
        "    initial_length = decoder_ids.shape[1]\n",
        "\n",
        "    #generating draft\n",
        "    for i in range(k):\n",
        "\n",
        "        #predicting the next token with the draft model\n",
        "        with torch.no_grad():\n",
        "            logits = draft_model(input_ids=input_ids, decoder_input_ids=decoder_ids_draft).logits\n",
        "            genid = torch.argmax(logits, dim=2)[0][-1]\n",
        "\n",
        "        #appending the generated id to the draft\n",
        "        genid = genid.expand(1,1)\n",
        "        decoder_ids_draft = torch.cat((decoder_ids_draft,genid),1)\n",
        "\n",
        "    print('=== Draft Generation')\n",
        "    current_draft = draft_tokenizer.decode(decoder_ids_draft[0])\n",
        "    print('generated draft tokens: {}'.format(decoder_ids_draft))\n",
        "    print('generated draft text: {}'.format(current_draft))\n",
        "\n",
        "    #Generating all next token predictions with the target\n",
        "    logits = target_model(input_ids=input_ids, decoder_input_ids=decoder_ids_draft).logits\n",
        "    genids = torch.argmax(logits, dim=2)[0]\n",
        "    print('=== Target Generation')\n",
        "    current_target = draft_tokenizer.decode(genids)\n",
        "    print('generated target tokens: {}'.format(genids))\n",
        "    print('generated target text: {}'.format(current_target))\n",
        "\n",
        "    #checking draft against target\n",
        "    for i, (dv, tv) in enumerate(zip(decoder_ids_draft[0,1:],genids[:-1])):\n",
        "        #target does not agree with the draft\n",
        "        if dv != tv:\n",
        "            #genids is next word, so this is done to preserve the first token\n",
        "            first_token = decoder_ids[0][:1]\n",
        "            decoder_ids = genids[:i+1]\n",
        "            decoder_ids = torch.cat((first_token,decoder_ids),0)\n",
        "            break\n",
        "    else:\n",
        "        #no disagreements\n",
        "        decoder_ids = genids\n",
        "\n",
        "    print('=== Validated Generation')\n",
        "    current_target = draft_tokenizer.decode(decoder_ids)\n",
        "    print('generated target tokens: {}'.format(decoder_ids))\n",
        "    print('generated target text: {}'.format(current_target))\n",
        "\n",
        "    #expanding dimensions so that the shape of the tensor is the same\n",
        "    decoder_ids = decoder_ids.expand(1,len(decoder_ids))\n",
        "\n",
        "    #logging\n",
        "    numgen = decoder_ids.shape[1] - initial_length\n",
        "    generated.append({'tokens generated': numgen, 'text before': before_text, 'text after': current_target})\n",
        "\n",
        "    #printing\n",
        "    # print('\\nsummary:')\n",
        "    # print('Number of tokens generated: {}'.format(numgen))\n",
        "    # print('Before: {}'.format(before_text))\n",
        "    # print('After: {}'.format(current_target))\n",
        "    # print('')"
      ],
      "metadata": {
        "id": "oB7_5LJMFd5k",
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "outputId": "21c4d10c-5a7c-4e47-cf4c-2c4b886ae8af"
      },
      "execution_count": 161,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "========== Speculative Sampling Iteration 0 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316, 20256,    15,   311,   181]])\n",
            "generated draft text: <pad>Die Kampfe nicht mit\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([316,   3,  15, 181, 181, 177])\n",
            "generated target text: Die e mit mit den\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([  0, 316,   3])\n",
            "generated target text: <pad>Die\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 2\n",
            "Before: <pad>\n",
            "After: <pad>Die\n",
            "\n",
            "========== Speculative Sampling Iteration 1 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316,     3,     2, 25231,     3,   547,   289]])\n",
            "generated draft text: <pad> Die <unk>ffentlichkeit hat sich\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([ 316,    3, 9465,   40,    3,  547,  289,    3])\n",
            "generated target text: Die Brul hat sich\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([   0,  316,    3, 9465])\n",
            "generated target text: <pad>Die Bru\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 1\n",
            "Before: <pad>Die\n",
            "After: <pad>Die Bru\n",
            "\n",
            "========== Speculative Sampling Iteration 2 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316,     3,  9465,    17, 13680,   229,   311,   181]])\n",
            "generated draft text: <pad>Die Brutalität ist nicht mit\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([ 316,    3, 9465,   17,  235,    3,  311,  181,  177])\n",
            "generated target text: Die Brutto  nicht mit den\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([   0,  316,    3, 9465,   17,  235])\n",
            "generated target text: <pad>Die Brutto\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 2\n",
            "Before: <pad>Die Bru\n",
            "After: <pad>Die Brutto\n",
            "\n",
            "========== Speculative Sampling Iteration 3 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316,     3,  9465,    17,   235,   109,   311,   181, 18117,\n",
            "            35]])\n",
            "generated draft text: <pad>Die Bruttole nicht mit Monsteren\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([ 316,    3, 9465,   17,  235,    7,   49,  181,  177,   29,    6])\n",
            "generated target text: Die Bruttoser mit denn,\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([   0,  316,    3, 9465,   17,  235,    7])\n",
            "generated target text: <pad>Die Bruttos\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 1\n",
            "Before: <pad>Die Brutto\n",
            "After: <pad>Die Bruttos\n",
            "\n",
            "========== Speculative Sampling Iteration 4 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316,     3,  9465,    17,   235,     7,   311,   181, 18117,\n",
            "            35,     6]])\n",
            "generated draft text: <pad>Die Bruttos nicht mit Monsteren,\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([ 316,    3, 9465,   17,  235,    7,   15,  181,  177,   29,    6,  561])\n",
            "generated target text: Die Bruttose mit denn, um\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([   0,  316,    3, 9465,   17,  235,    7,   15])\n",
            "generated target text: <pad>Die Bruttose\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 1\n",
            "Before: <pad>Die Bruttos\n",
            "After: <pad>Die Bruttose\n",
            "\n",
            "========== Speculative Sampling Iteration 5 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316,     3,  9465,    17,   235,     7,    15,   404,   311,\n",
            "           181, 18117,    35]])\n",
            "generated draft text: <pad>Die Bruttose werden nicht mit Monsteren\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([ 316,    3, 9465,   17,  235,    7,   15,  155,  311,  181,  177,   29,\n",
            "           3])\n",
            "generated target text: Die Bruttoseit nicht mit denn\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([   0,  316,    3, 9465,   17,  235,    7,   15,  155])\n",
            "generated target text: <pad>Die Bruttoseit\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 1\n",
            "Before: <pad>Die Bruttose\n",
            "After: <pad>Die Bruttoseit\n",
            "\n",
            "========== Speculative Sampling Iteration 6 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316,     3,  9465,    17,   235,     7,    15,   155,    15,\n",
            "           404,   311,   181, 18117]])\n",
            "generated draft text: <pad>Die Bruttoseite werden nicht mit Monster\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([ 316,    3, 9465,   17,  235,    7,   15,  155,   35,    3,  311,  181,\n",
            "         177,   29])\n",
            "generated target text: Die Bruttoseiten  nicht mit denn\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([   0,  316,    3, 9465,   17,  235,    7,   15,  155,   35])\n",
            "generated target text: <pad>Die Bruttoseiten\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 1\n",
            "Before: <pad>Die Bruttoseit\n",
            "After: <pad>Die Bruttoseiten\n",
            "\n",
            "========== Speculative Sampling Iteration 7 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "           404,   311,   181,   340, 18117]])\n",
            "generated draft text: <pad>Die Bruttoseiten werden nicht mit dem Monster\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([  316,     3,  9465,    17,   235,     7,    15,   155,    35,     3,\n",
            "          311,   181,   177, 20256,    29])\n",
            "generated target text: Die Bruttoseiten  nicht mit den Kampfn\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([   0,  316,    3, 9465,   17,  235,    7,   15,  155,   35,    3])\n",
            "generated target text: <pad>Die Bruttoseiten\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 1\n",
            "Before: <pad>Die Bruttoseiten\n",
            "After: <pad>Die Bruttoseiten\n",
            "\n",
            "========== Speculative Sampling Iteration 8 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "             3, 20854,    29,   311,   181, 18117]])\n",
            "generated draft text: <pad>Die Bruttoseiten kämpfen nicht mit Monster\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([  316,     3,  9465,    17,   235,     7,    15,   155,    35,     3,\n",
            "        20854,    29,   311,   181,   340,    29])\n",
            "generated target text: Die Bruttoseiten kämpfen nicht mit demn\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "            3, 20854,    29,   311,   181,   340])\n",
            "generated target text: <pad>Die Bruttoseiten kämpfen nicht mit dem\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 5\n",
            "Before: <pad>Die Bruttoseiten\n",
            "After: <pad>Die Bruttoseiten kämpfen nicht mit dem\n",
            "\n",
            "========== Speculative Sampling Iteration 9 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "             3, 20854,    29,   311,   181,   340, 18117,     6,  2889,   292,\n",
            "           311]])\n",
            "generated draft text: <pad>Die Bruttoseiten kämpfen nicht mit dem Monster, damit Sie nicht\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([  316,     3,  9465,    17,   235,     7,    15,   155,    35,     3,\n",
            "        20854,    29,   311,   181,   340,   961,    29,   561,   292,   289,\n",
            "          236])\n",
            "generated target text: Die Bruttoseiten kämpfen nicht mit dem Gen um Sie sich ein\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "            3, 20854,    29,   311,   181,   340,   961])\n",
            "generated target text: <pad>Die Bruttoseiten kämpfen nicht mit dem Ge\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 1\n",
            "Before: <pad>Die Bruttoseiten kämpfen nicht mit dem\n",
            "After: <pad>Die Bruttoseiten kämpfen nicht mit dem Ge\n",
            "\n",
            "========== Speculative Sampling Iteration 10 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "             3, 20854,    29,   311,   181,   340,   961,   860,  3142,     6,\n",
            "          2889,   292]])\n",
            "generated draft text: <pad>Die Bruttoseiten kämpfen nicht mit dem Geschick, damit Sie\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([  316,     3,  9465,    17,   235,     7,    15,   155,    35,     3,\n",
            "        20854,    29,   311,   181,   340,   961,    89,    51,     6,   561,\n",
            "          292,   289])\n",
            "generated target text: Die Bruttoseiten kämpfen nicht mit dem Gefm, um Sie sich\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "            3, 20854,    29,   311,   181,   340,   961,    89])\n",
            "generated target text: <pad>Die Bruttoseiten kämpfen nicht mit dem Gef\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 1\n",
            "Before: <pad>Die Bruttoseiten kämpfen nicht mit dem Ge\n",
            "After: <pad>Die Bruttoseiten kämpfen nicht mit dem Gef\n",
            "\n",
            "========== Speculative Sampling Iteration 11 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "             3, 20854,    29,   311,   181,   340,   961,    89,  7423,    29,\n",
            "           159,     6,  2889]])\n",
            "generated draft text: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, damit\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([  316,     3,  9465,    17,   235,     7,    15,   155,    35,     3,\n",
            "        20854,    29,   311,   181,   340,   961,    89,  7423,    29,   159,\n",
            "            6,   561,   292])\n",
            "generated target text: Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um Sie\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "            3, 20854,    29,   311,   181,   340,   961,    89,  7423,    29,\n",
            "          159,     6,   561])\n",
            "generated target text: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 5\n",
            "Before: <pad>Die Bruttoseiten kämpfen nicht mit dem Gef\n",
            "After: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um\n",
            "\n",
            "========== Speculative Sampling Iteration 12 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "             3, 20854,    29,   311,   181,   340,   961,    89,  7423,    29,\n",
            "           159,     6,   561,   292,   170,   665,   961,    89]])\n",
            "generated draft text: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um Sie zu einem Gef\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([  316,     3,  9465,    17,   235,     7,    15,   155,    35,     3,\n",
            "        20854,    29,   311,   181,   340,   961,    89,  7423,    29,   159,\n",
            "            6,   561,   289,  2619,   665,   961,    89,  7423])\n",
            "generated target text: Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um sich selbst einem Gefäng\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "            3, 20854,    29,   311,   181,   340,   961,    89,  7423,    29,\n",
            "          159,     6,   561,   289])\n",
            "generated target text: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um sich\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 1\n",
            "Before: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um\n",
            "After: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um sich\n",
            "\n",
            "========== Speculative Sampling Iteration 13 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "             3, 20854,    29,   311,   181,   340,   961,    89,  7423,    29,\n",
            "           159,     6,   561,   289,   170,   665,   961,    89,  7423]])\n",
            "generated draft text: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um sich zu einem Gefäng\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([  316,     3,  9465,    17,   235,     7,    15,   155,    35,     3,\n",
            "        20854,    29,   311,   181,   340,   961,    89,  7423,    29,   159,\n",
            "            6,   561,   289,  2619,   665,   961,    89,  7423,    29])\n",
            "generated target text: Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um sich selbst einem Gefängn\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "            3, 20854,    29,   311,   181,   340,   961,    89,  7423,    29,\n",
            "          159,     6,   561,   289,  2619])\n",
            "generated target text: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um sich selbst\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 1\n",
            "Before: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um sich\n",
            "After: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um sich selbst\n",
            "\n",
            "========== Speculative Sampling Iteration 14 ==========\n",
            "=== Draft Generation\n",
            "generated draft tokens: tensor([[    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "             3, 20854,    29,   311,   181,   340,   961,    89,  7423,    29,\n",
            "           159,     6,   561,   289,  2619,   236,   961,    89,  7423,    29]])\n",
            "generated draft text: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um sich selbst ein Gefängn\n",
            "=== Target Generation\n",
            "generated target tokens: tensor([  316,     3,  9465,    17,   235,     7,    15,   155,    35,     3,\n",
            "        20854,    29,   311,   181,   340,   961,    89,  7423,    29,   159,\n",
            "            6,   561,   289,  2619,   170,   961,    89,  7423,    29,   159])\n",
            "generated target text: Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um sich selbst zu Gefängnis\n",
            "=== Validated Generation\n",
            "generated target tokens: tensor([    0,   316,     3,  9465,    17,   235,     7,    15,   155,    35,\n",
            "            3, 20854,    29,   311,   181,   340,   961,    89,  7423,    29,\n",
            "          159,     6,   561,   289,  2619,   170])\n",
            "generated target text: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um sich selbst zu\n",
            "\n",
            "summary:\n",
            "Number of tokens generated: 1\n",
            "Before: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um sich selbst\n",
            "After: <pad>Die Bruttoseiten kämpfen nicht mit dem Gefängnis, um sich selbst zu\n",
            "\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "import pandas as pd\n",
        "print('assumed average speedup: {}')\n",
        "pd.DataFrame(generated)"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 520
        },
        "id": "TBezXtL62t-c",
        "outputId": "a05172e6-0fab-4ed6-90d2-d1214a8a16d2"
      },
      "execution_count": 162,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "    tokens generated                                        text before  \\\n",
              "0                  2                                              <pad>   \n",
              "1                  1                                           <pad>Die   \n",
              "2                  2                                       <pad>Die Bru   \n",
              "3                  1                                    <pad>Die Brutto   \n",
              "4                  1                                   <pad>Die Bruttos   \n",
              "5                  1                                  <pad>Die Bruttose   \n",
              "6                  1                                <pad>Die Bruttoseit   \n",
              "7                  1                              <pad>Die Bruttoseiten   \n",
              "8                  5                              <pad>Die Bruttoseiten   \n",
              "9                  1        <pad>Die Bruttoseiten kämpfen nicht mit dem   \n",
              "10                 1     <pad>Die Bruttoseiten kämpfen nicht mit dem Ge   \n",
              "11                 5    <pad>Die Bruttoseiten kämpfen nicht mit dem Gef   \n",
              "12                 1  <pad>Die Bruttoseiten kämpfen nicht mit dem Ge...   \n",
              "13                 1  <pad>Die Bruttoseiten kämpfen nicht mit dem Ge...   \n",
              "14                 1  <pad>Die Bruttoseiten kämpfen nicht mit dem Ge...   \n",
              "\n",
              "                                           text after  \n",
              "0                                            <pad>Die  \n",
              "1                                        <pad>Die Bru  \n",
              "2                                     <pad>Die Brutto  \n",
              "3                                    <pad>Die Bruttos  \n",
              "4                                   <pad>Die Bruttose  \n",
              "5                                 <pad>Die Bruttoseit  \n",
              "6                               <pad>Die Bruttoseiten  \n",
              "7                               <pad>Die Bruttoseiten  \n",
              "8         <pad>Die Bruttoseiten kämpfen nicht mit dem  \n",
              "9      <pad>Die Bruttoseiten kämpfen nicht mit dem Ge  \n",
              "10    <pad>Die Bruttoseiten kämpfen nicht mit dem Gef  \n",
              "11  <pad>Die Bruttoseiten kämpfen nicht mit dem Ge...  \n",
              "12  <pad>Die Bruttoseiten kämpfen nicht mit dem Ge...  \n",
              "13  <pad>Die Bruttoseiten kämpfen nicht mit dem Ge...  \n",
              "14  <pad>Die Bruttoseiten kämpfen nicht mit dem Ge...  "
            ],
            "text/html": [
              "\n",
              "  <div id=\"df-1efa5bb1-0126-41f9-8f23-24e15c2edc08\" class=\"colab-df-container\">\n",
              "    <div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>tokens generated</th>\n",
              "      <th>text before</th>\n",
              "      <th>text after</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>2</td>\n",
              "      <td>&lt;pad&gt;</td>\n",
              "      <td>&lt;pad&gt;Die</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>1</td>\n",
              "      <td>&lt;pad&gt;Die</td>\n",
              "      <td>&lt;pad&gt;Die Bru</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>2</td>\n",
              "      <td>&lt;pad&gt;Die Bru</td>\n",
              "      <td>&lt;pad&gt;Die Brutto</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>1</td>\n",
              "      <td>&lt;pad&gt;Die Brutto</td>\n",
              "      <td>&lt;pad&gt;Die Bruttos</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>1</td>\n",
              "      <td>&lt;pad&gt;Die Bruttos</td>\n",
              "      <td>&lt;pad&gt;Die Bruttose</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>5</th>\n",
              "      <td>1</td>\n",
              "      <td>&lt;pad&gt;Die Bruttose</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseit</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>6</th>\n",
              "      <td>1</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseit</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>7</th>\n",
              "      <td>1</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>8</th>\n",
              "      <td>5</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten kämpfen nicht mit dem</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>9</th>\n",
              "      <td>1</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten kämpfen nicht mit dem</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten kämpfen nicht mit dem Ge</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>10</th>\n",
              "      <td>1</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten kämpfen nicht mit dem Ge</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten kämpfen nicht mit dem Gef</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>11</th>\n",
              "      <td>5</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten kämpfen nicht mit dem Gef</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten kämpfen nicht mit dem Ge...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>12</th>\n",
              "      <td>1</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten kämpfen nicht mit dem Ge...</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten kämpfen nicht mit dem Ge...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>13</th>\n",
              "      <td>1</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten kämpfen nicht mit dem Ge...</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten kämpfen nicht mit dem Ge...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>14</th>\n",
              "      <td>1</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten kämpfen nicht mit dem Ge...</td>\n",
              "      <td>&lt;pad&gt;Die Bruttoseiten kämpfen nicht mit dem Ge...</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>\n",
              "    <div class=\"colab-df-buttons\">\n",
              "\n",
              "  <div class=\"colab-df-container\">\n",
              "    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-1efa5bb1-0126-41f9-8f23-24e15c2edc08')\"\n",
              "            title=\"Convert this dataframe to an interactive table.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n",
              "    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "\n",
              "  <style>\n",
              "    .colab-df-container {\n",
              "      display:flex;\n",
              "      gap: 12px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert {\n",
              "      background-color: #E8F0FE;\n",
              "      border: none;\n",
              "      border-radius: 50%;\n",
              "      cursor: pointer;\n",
              "      display: none;\n",
              "      fill: #1967D2;\n",
              "      height: 32px;\n",
              "      padding: 0 0 0 0;\n",
              "      width: 32px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert:hover {\n",
              "      background-color: #E2EBFA;\n",
              "      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "      fill: #174EA6;\n",
              "    }\n",
              "\n",
              "    .colab-df-buttons div {\n",
              "      margin-bottom: 4px;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert {\n",
              "      background-color: #3B4455;\n",
              "      fill: #D2E3FC;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert:hover {\n",
              "      background-color: #434B5C;\n",
              "      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "      fill: #FFFFFF;\n",
              "    }\n",
              "  </style>\n",
              "\n",
              "    <script>\n",
              "      const buttonEl =\n",
              "        document.querySelector('#df-1efa5bb1-0126-41f9-8f23-24e15c2edc08 button.colab-df-convert');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      async function convertToInteractive(key) {\n",
              "        const element = document.querySelector('#df-1efa5bb1-0126-41f9-8f23-24e15c2edc08');\n",
              "        const dataTable =\n",
              "          await google.colab.kernel.invokeFunction('convertToInteractive',\n",
              "                                                    [key], {});\n",
              "        if (!dataTable) return;\n",
              "\n",
              "        const docLinkHtml = 'Like what you see? Visit the ' +\n",
              "          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
              "          + ' to learn more about interactive tables.';\n",
              "        element.innerHTML = '';\n",
              "        dataTable['output_type'] = 'display_data';\n",
              "        await google.colab.output.renderOutput(dataTable, element);\n",
              "        const docLink = document.createElement('div');\n",
              "        docLink.innerHTML = docLinkHtml;\n",
              "        element.appendChild(docLink);\n",
              "      }\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "\n",
              "<div id=\"df-9a90a0ee-00a1-4b08-b1ee-0faedce20ad8\">\n",
              "  <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-9a90a0ee-00a1-4b08-b1ee-0faedce20ad8')\"\n",
              "            title=\"Suggest charts\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
              "     width=\"24px\">\n",
              "    <g>\n",
              "        <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n",
              "    </g>\n",
              "</svg>\n",
              "  </button>\n",
              "\n",
              "<style>\n",
              "  .colab-df-quickchart {\n",
              "      --bg-color: #E8F0FE;\n",
              "      --fill-color: #1967D2;\n",
              "      --hover-bg-color: #E2EBFA;\n",
              "      --hover-fill-color: #174EA6;\n",
              "      --disabled-fill-color: #AAA;\n",
              "      --disabled-bg-color: #DDD;\n",
              "  }\n",
              "\n",
              "  [theme=dark] .colab-df-quickchart {\n",
              "      --bg-color: #3B4455;\n",
              "      --fill-color: #D2E3FC;\n",
              "      --hover-bg-color: #434B5C;\n",
              "      --hover-fill-color: #FFFFFF;\n",
              "      --disabled-bg-color: #3B4455;\n",
              "      --disabled-fill-color: #666;\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart {\n",
              "    background-color: var(--bg-color);\n",
              "    border: none;\n",
              "    border-radius: 50%;\n",
              "    cursor: pointer;\n",
              "    display: none;\n",
              "    fill: var(--fill-color);\n",
              "    height: 32px;\n",
              "    padding: 0;\n",
              "    width: 32px;\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart:hover {\n",
              "    background-color: var(--hover-bg-color);\n",
              "    box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "    fill: var(--button-hover-fill-color);\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart-complete:disabled,\n",
              "  .colab-df-quickchart-complete:disabled:hover {\n",
              "    background-color: var(--disabled-bg-color);\n",
              "    fill: var(--disabled-fill-color);\n",
              "    box-shadow: none;\n",
              "  }\n",
              "\n",
              "  .colab-df-spinner {\n",
              "    border: 2px solid var(--fill-color);\n",
              "    border-color: transparent;\n",
              "    border-bottom-color: var(--fill-color);\n",
              "    animation:\n",
              "      spin 1s steps(1) infinite;\n",
              "  }\n",
              "\n",
              "  @keyframes spin {\n",
              "    0% {\n",
              "      border-color: transparent;\n",
              "      border-bottom-color: var(--fill-color);\n",
              "      border-left-color: var(--fill-color);\n",
              "    }\n",
              "    20% {\n",
              "      border-color: transparent;\n",
              "      border-left-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "    }\n",
              "    30% {\n",
              "      border-color: transparent;\n",
              "      border-left-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "      border-right-color: var(--fill-color);\n",
              "    }\n",
              "    40% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "    }\n",
              "    60% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "    }\n",
              "    80% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "      border-bottom-color: var(--fill-color);\n",
              "    }\n",
              "    90% {\n",
              "      border-color: transparent;\n",
              "      border-bottom-color: var(--fill-color);\n",
              "    }\n",
              "  }\n",
              "</style>\n",
              "\n",
              "  <script>\n",
              "    async function quickchart(key) {\n",
              "      const quickchartButtonEl =\n",
              "        document.querySelector('#' + key + ' button');\n",
              "      quickchartButtonEl.disabled = true;  // To prevent multiple clicks.\n",
              "      quickchartButtonEl.classList.add('colab-df-spinner');\n",
              "      try {\n",
              "        const charts = await google.colab.kernel.invokeFunction(\n",
              "            'suggestCharts', [key], {});\n",
              "      } catch (error) {\n",
              "        console.error('Error during call to suggestCharts:', error);\n",
              "      }\n",
              "      quickchartButtonEl.classList.remove('colab-df-spinner');\n",
              "      quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n",
              "    }\n",
              "    (() => {\n",
              "      let quickchartButtonEl =\n",
              "        document.querySelector('#df-9a90a0ee-00a1-4b08-b1ee-0faedce20ad8 button');\n",
              "      quickchartButtonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "    })();\n",
              "  </script>\n",
              "</div>\n",
              "\n",
              "    </div>\n",
              "  </div>\n"
            ]
          },
          "metadata": {},
          "execution_count": 162
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "prompt = \"What is the geological compesition of the Moon?\"\n",
        "ids = draft_tokenizer(prompt, return_tensors=\"pt\").input_ids\n",
        "tokens = []\n",
        "for id in ids[0]:\n",
        "    tokens.append(draft_tokenizer.decode(id))"
      ],
      "metadata": {
        "id": "jDowu3b65KFK"
      },
      "execution_count": 174,
      "outputs": []
    },
    {
      "cell_type": "code",
      "source": [
        "print('Prompt: \"{}\"'.format(prompt))\n",
        "print('Tokens: {}'.format(tokens))\n",
        "print('TokenIds: {}'.format(ids.tolist()[0]))"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "mqYg_50JEpSi",
        "outputId": "fd3dbfd0-f45b-49bd-f73b-45d285920eb6"
      },
      "execution_count": 181,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Prompt: \"What is the geological compesition of the Moon?\"\n",
            "Tokens: ['What', 'is', 'the', 'ge', 'ological', 'comp', 'e', 's', 'ition', 'of', 'the', 'Moon', '?', '</s>']\n",
            "TokenIds: [363, 19, 8, 873, 4478, 2890, 15, 7, 4749, 13, 8, 9023, 58, 1]\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "ids.tolist()[0]"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "ozNsA-uUE_LW",
        "outputId": "c5448e53-7576-4956-9d36-f73c68b19460"
      },
      "execution_count": 180,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "[363, 19, 8, 873, 4478, 2890, 15, 7, 4749, 13, 8, 9023, 58, 1]"
            ]
          },
          "metadata": {},
          "execution_count": 180
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [],
      "metadata": {
        "id": "v6UAz2NfFusr"
      },
      "execution_count": null,
      "outputs": []
    }
  ]
}